Q: I thought that an #if 0 block will ignore everything inside it. But it doesn't.\
\
A: The ANSI standard says that #if statements only ignore syntactically correct code. So if there are syntax errors, you will get an error. Two particularly nasty ones are unterminated comments, and unterminated string constants. See examples below.\